home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Sample Code / AOCE Sample Code / PowerTalk Access Modules / Sample PMSAM / PMSAM Framework / RoboSamSlot / Letter.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-07-28  |  2.3 KB  |  107 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        OCELetter.h
  3.  
  4.     Contains:    xxx put contents here xxx
  5.  
  6.     Written by:    Tim Harnett
  7.  
  8.     Copyright:    © 1994 by Apple Computer, Inc., all rights reserved.
  9.  
  10.     Change History (most recent first):
  11.  
  12.          <1>     9/20/94    TMH        Abandon RoadsideRest embrace Mercury
  13.          <4>      9/9/94    TMH        TIncoming/TOutgoing adaptations, removed TAOCELetter
  14.          <3>     6/17/94    TMH        read content stuff
  15.          <2>     6/14/94    TMH        use CRecipient.h
  16.                  4/12/94    TMH        xxx put comment here xxx
  17.  
  18.     To Do:
  19. */
  20.  
  21.  
  22. #ifndef __Letter__
  23. #define  __Letter__
  24.  
  25. class CContentReader;
  26. #ifndef __TYPES__
  27. #include "Types.h"
  28. #endif
  29.  
  30. #ifndef __OCEMAIL__
  31. #include <OCEMail.h>
  32. #endif
  33.  
  34. class TMSAMSlot;
  35.  
  36. #ifndef __CRString__
  37. #include "CRString.h"
  38. #endif
  39.  
  40.  
  41. //------------------------------------------------------------------------------
  42. //                         MaximumLetterAttributes
  43. //
  44. // this structure is here to calculate the maximum buffer size needed when
  45. // calling MSAMGetAttributes.  This structure isn't actually used to read the
  46. // attributes, since if one is missing, they will not be aligned in this way.
  47. //
  48. // note: this structure was incorrect prior to 11/9/93, as the format of
  49. // the attributes changed some time ago and I didn't change the PMSAM...
  50. // we don't include from/to/cc/bcc since we don't access them via GetAttributes
  51. //--------------------------------------------------------------------------------
  52.  
  53. typedef struct MaximumLetterAttributes {
  54.     MailLetterFlags        letterFlags;
  55.     MailIndications        indications;
  56.     OCECreatorType        msgType;
  57.     MailLetterID        letterID;
  58.     MailTime            sendTimeStamp;
  59.     MailNestingLevel    nestingLevel;
  60.     OSType                msgFamily;
  61.     MailLetterID        replyID;
  62.     MailLetterID        conversationID;
  63.     RString                subject;
  64. } MaximumLetterAttributes, *MaximumLetterAttributesPtr;
  65.  
  66.  
  67.  
  68. //--------------------------------------
  69. //        T L e t t e r
  70. //--------------------------------------
  71.  
  72.  
  73. class TLetter {
  74. public:    
  75.                         TLetter();
  76.         void            ILetter(TMSAMSlot* msamSlot);
  77.         
  78.         
  79.             //    Accessors
  80.  
  81.     TMSAMSlot*                GetSlot() { return fMSAMSlot; }
  82.  
  83.         //    Get Letter Parts
  84.         
  85.         
  86.     virtual    short            GetPriority();
  87.     virtual    Boolean            HasContent();
  88.     virtual    void            GetSubject(CRString32& rstr);
  89.     virtual    void            GetSenderName(CRString32& rstr);
  90.     virtual    long            GetContentLength();
  91.     virtual    void            GetSendTime(MailTime* utcTime);
  92.             
  93.         
  94. protected:
  95.         
  96.     CRString32            fSubject;
  97.     CRString32            fSenderName;
  98.     MailTime            fSendTime;
  99.  
  100.     TMSAMSlot*            fMSAMSlot;
  101.  
  102. };
  103.  
  104.  
  105.  
  106. #endif    __OCELetter__
  107.